home *** CD-ROM | disk | FTP | other *** search
/ 64'er / 64ER_CD.iso / sh2x / sh23c.d64 / spulen berechnen (.txt) < prev    next >
Commodore BASIC  |  1995-03-30  |  8KB  |  246 lines

  1. 10 POKE53280,1:POKE53281,1:PRINT"[147]"
  2. 20 POKE646,0:POKE53272,23:O1=0:O2=0
  3. 50 REM ** SPULE (HF-DROSSEL) **
  4. 100 GOSUB50000:CLOSE2:OPEN2,0:GOTO1000
  5. 500 REM ** GET **
  6. 510 POKE198,0:WAIT198,1:GETA$:A=VAL(A$):RETURN
  7. 1000 REM ** MENUE **
  8. 1010 PRINT"[147]":SYSSZ,0,0,T$(0):SYSSZ,0,1,T$(1):SYSSZ,0,2,T$(2):SYSSZ,0,3,T$(3)
  9. 1020 SYSSZ,0,4,T$(4)
  10. 1030 SYSSZ,3,8,"1 = [211]PULE BERECHNEN"
  11. 1040 SYSSZ,3,10,"2 = [203]ERNTABELLE AUFLISTEN"
  12. 1050 SYSSZ,3,12,"3 = [196]RAHTTABELLE AUFLISTEN"
  13. 1060 SYSSZ,3,14,"4 = [197]RGEBNIS AUSDRUCKEN"
  14. 1070 SYSSZ,3,16,"5 = [212]ABELLEN AUSDRUCKEN"
  15. 1080 SYSSZ,3,19,T$(8)
  16. 1100 GOSUB500:IFA<1ORA>5THEN1100
  17. 1110 ONAGOSUB2000,6000,7000,55000,56000
  18. 1120 GOTO1010
  19. 2000 REM ** EINGABE **
  20. 2010 IFM4=2THEN2100
  21. 2020 T1=1:L1=0:D1=0:B1=0:K1=0:A1=0:F1=0:X1=0:Y1=0:M2=0:M3=0:M4=0
  22. 2100 FORJ=5TO23:SYSSZ,0,J,T$(7):NEXT:SYSSZ,2,3,"[211]PULENDATEN           ":PRINT
  23. 2110 SYSSZ,1,6,"[204]  IN [200]ENRY  = "L1:SYSSZ,17,6,"";:INPUT#2,A$:L1=VAL(A$)
  24. 2120 SYSSZ,1,8,"[196]  [203]ERN      = "D1:SYSSZ,17,8,"";:INPUT#2,A$:D1=VAL(A$)
  25. 2130 SYSSZ,1,10,"[194]  [203]ERN      = "B1:SYSSZ,17,10,"";:INPUT#2,A$:B1=VAL(A$)
  26. 2140 SYSSZ,1,12,"[203]Z 1-2       = "K1:SYSSZ,17,12,"";:INPUT#2,A$:K1=VAL(A$)
  27. 2150 IFK1<1ORK1>2THEN2140
  28. 2160 SYSSZ,1,14,"[193]L IN N[200]ENRY = "A1:SYSSZ,17,14,"";:INPUT#2,A$:A1=VAL(A$)
  29. 2170 SYSSZ,1,16,"F  IN [200]ERZ   = "F1:SYSSZ,17,16,"";:INPUT#2,A$:F1=VAL(A$)
  30. 2180 GOSUB3000:RETURN
  31. 3000 REM ** KERNTABELLE LESEN **
  32. 3010 FORJ1=1TO15
  33. 3020 IFQ(J1,1)=D1ANDQ(J1,2)=B1ANDQ(J1,3)=K1THENX1=Q(J1,4):Y1=Q(J1,5):GOTO3040
  34. 3030 NEXT
  35. 3040 IFX1=0ORY1=0ORJ1>15THENSYSSZ,0,20,T$(10):SYSSZ,0,21,T$(11)
  36. 3050 IFX1=0ORY1=0ORJ1>15THENSYSSZ,0,22,T$(12)" (J/N)":GOTO3070
  37. 3060 GOTO3090
  38. 3070 GOSUB500:IFA$="J"THENM4=2:GOSUB6000
  39. 3080 GOTO2100
  40. 3090 N1=SQR(L1/(1E-9*A1))
  41. 4000 REM ** AUSGABE **
  42. 4010 M2=0:M4=0
  43. 4020 N5=N1:N=N5:GOSUB9000:IFM4=1THENGOTO2000
  44. 4030 E1=D3:E2=D4:NA=N5:MA=M2:RA=R:RA$=R$:LA=L:LA$=L$:FA=FE:Z3=0
  45. 4040 IFF1<>0THENZ3=2*(null)*F1*L1
  46. 4050 R=Z3:GOSUB8200:R2=R:R2$=R$
  47. 4060 QQ=Z3/R9:QQ=INT(QQ*10)/10
  48. 4070 FORJ=6TO23:SYSSZ,0,J,T$(7):NEXT
  49. 4080 SYSSZ,0,6,"[204]  IN [200]ENRY   =";L1
  50. 4090 SYSSZ,0,7,"[196]  [203]ERN       =";D1
  51. 4100 SYSSZ,0,8,"[194]  [203]ERN       =";B1
  52. 4110 SYSSZ,0,9,"[203]Z 1-2        =";K1
  53. 4120 SYSSZ,0,10,"[193]L IN N[200]ENRY  =";A1
  54. 4130 SYSSZ,0,11,"F  IN [200]ERZ    =";F1
  55. 4140 SYSSZ,0,13,"[206]             =";NA
  56. 4150 IFMA=0THENPRINTTAB(24)"[145][215]INDUNGEN"
  57. 4160 IFMA=1THENPRINTTAB(24)"[145]*2 [215]IND.PAR."
  58. 4170 SYSSZ,0,14,"[196]  [206]ENND.     =";E1;TAB(24)"[195]UL"
  59. 4180 SYSSZ,0,15,"[196]  [193]USSEND.   =";E2;TAB(24)"[195]UL"
  60. 4190 SYSSZ,0,16,"[210][195]U           =";RA;TAB(24)RA$
  61. 4200 SYSSZ,0,17,"[216]L [201]NDUKTANZ  =";R2;TAB(24)R2$
  62. 4210 SYSSZ,0,18,"[209]  [211]PULENGUETE=";QQ
  63. 4220 SYSSZ,0,19,"F[195]U           =";FA;TAB(24)"[203]UPFERFUELLFAK."
  64. 4230 GOSUB5000:IFM4=1THENRETURN
  65. 4240 GOSUB9080:GOTO4030
  66. 5000 REM ** DRAHTSTAERKE AENDERN **
  67. 5010 SYSSZ,0,21,T$(13):M3=1
  68. 5020 SYSSZ,0,23," [196]N+1=[198]1  [196]N-1=[198]3  [193]NDERE [198]7 ":GOSUB500
  69. 5030 IFA$=CHR$(13)THENM4=1:RETURN
  70. 5040 IFA$=CHR$(136)THEN2100
  71. 5050 IFA$=CHR$(133)ANDJ2=31ANDMA=1THENRETURN
  72. 5060 IFA$=CHR$(133)THENJ2=J2+1:IFJ2>31THENJ2=26:MA=1:GOTO5080
  73. 5070 GOTO5090
  74. 5080 D3=Q1(J2,1):D4=Q1(J2,2):Z1=Q1(J2,3):RETURN
  75. 5090 IFA$=CHR$(134)THENJ2=J2-1:IFJ2<26ANDM2=1THENJ2=31:MA=0
  76. 5100 D3=Q1(J2,1):D4=Q1(J2,2):Z1=Q1(J2,3):RETURN
  77. 6000 REM ** KERNTABELLE LESEN **
  78. 6010 FORJ=5TO23:SYSSZ,0,J,T$(7):NEXT
  79. 6020 SYSSZ,2,3,"[203]ERNTABELLE AUFLISTEN"
  80. 6030 SYSSZ,1,5," [196]  [203]ERN  [194] "," [203]Z "," L/[206] "
  81. 6040 FORJ=1TO15
  82. 6050 SYSSZ,1,J+6,Q(J,1),Q(J,2),Q(J,3),Q(J,6)
  83. 6060 NEXT:GOTO500
  84. 7000 REM ** DRAHTTABELLE LESEN **
  85. 7010 FORJ=5TO23:SYSSZ,0,J,T$(7):NEXT
  86. 7020 SYSSZ,2,3,"[196]RAHTTABELLE AUFLISTEN"
  87. 7030 SYSSZ,2,5," [196]N "," [196]A "," [210]=[207]HM/M "
  88. 7040 FORJ=1TO15
  89. 7050 SYSSZ,1,J+6,Q1(J,1),Q1(J,2),Q1(J,3):NEXT
  90. 7060 PRINT" WEITER MIT RETURN":GOSUB500
  91. 7070 FORJ=6TO23:SYSSZ,0,J,T$(7):NEXT
  92. 7080 FORJ=16TO31
  93. 7090 SYSSZ,1,J-9,Q1(J,1),Q1(J,2),Q1(J,3)
  94. 7100 NEXT:GOSUB500:RETURN
  95. 8000 REM ** RUNDUNG VON N **
  96. 8010 NY=N5-INT(N5)
  97. 8020 IFNY>.7THENN5=INT(N5)+1:RETURN
  98. 8030 IFNY>.2THENN5=INT(N5)+.5:RETURN
  99. 8040 RETURN
  100. 8100 REM ** FORMATIERUNG VON L **
  101. 8110 IFL<1E-6THENL=L*1E9:L$="N[200]":GOTO8150
  102. 8120 IFL<1E-3THENL=L*1E6:L$="U[200]":GOTO8150
  103. 8130 IFL<1THENL=L*1E3:L$="M[200]":GOTO8150
  104. 8140 L$="[200]"
  105. 8150 L=INT(L+.5):RETURN
  106. 8200 REM ** FORMATIERUNG VON R **
  107. 8210 IFR>1E6THENR=R/1E6:R$="[205][207]HM":GOTO8250
  108. 8220 IFR>1E3THENR=R/1E3:R$="K[207]HM":GOTO8250
  109. 8230 IFR>1THENR$="[207]HM":GOTO8250
  110. 8240 IFR>1E-3THENR=R*1E3:R$="[205]ILLI [207]HM"
  111. 8250 R=INT(R*1000)/1000:RETURN
  112. 9000 REM ** BERECHNUNG **
  113. 9010 D2=Y1/(EXP(LOG(N)/X1))
  114. 9020 IFD2>=1.068THEND2=SQR((D2^2)/2):M2=1
  115. 9030 IFD2>=1.068THEND2=1.068:J2=31
  116. 9040 FORJ2=1TO31
  117. 9050 IFD2=<Q1(J2,2)THEND3=Q1(J2,1):D4=Q1(J2,2):Z1=Q1(J2,3):GOTO9070
  118. 9060 NEXT
  119. 9070 N5=INT((N5+.05)*10)/10:GOSUB8000
  120. 9080 N6=EXP((LOG(Y1/D4))*X1)
  121. 9090 FD=N5/N6:FE=INT(FD*50+.5)/100:IFM2=1THENFE=FE*2
  122. 9100 Z2=Q(J1,6):R=(Z2*N5*FD+100)/1000*Z1:IFM2=1THENR=R/2
  123. 9110 R9=R:GOSUB8200
  124. 9120 RETURN
  125. 50000 REM ** VARIABLEN LESEN **
  126. 50010 DIMQ(15,7),Q1(31,3),T$(15)
  127. 50100 T$(0)="[176][192][192][192][192][192][192][192][192][192][192][178][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][174]"
  128. 50110 T$(1)="[221] [200][211][197]-[211]OFT [221] [201]NDUKTIVITAETEN BERECHNEN [221]"
  129. 50120 T$(2)="[171][192][192][192][192][192][192][192][192][192][192][177][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][179]
  130. 50130 T$(3)[178]"(null)                                      (null)"
  131. 50140 T$(4)[178]"/TANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANEXP
  132. 50150 T$(5)="[211]PULE"
  133. 50160 T$(6)="[213]EBERTRAGER"
  134. 50170 T$(7)="                                       "
  135. 50180 T$(8)="[194]ITTE WAEHLEN:"
  136. 50190 T$(9)="[194]ITTE GEWUENSCHTE NUMMER EINTIPPEN"
  137. 50200 T$(10)="[203]ERNDATEN NICHT GEF."
  138. 50210 T$(11)="[194]ITTE [206]EUEINGABE"
  139. 50220 T$(12)="[203]ERNDATEN AUFLISTEN ?"
  140. 50230 T$(13)="[197]INGABE AENDERN ? (NEIN [210][197][212][213][210][206])"
  141. 51000 REM ** KERNDATEN **
  142. 51100 FORJ=1TO15
  143. 51200 FORW=1TO7
  144. 51205 READW1
  145. 51210 Q(J,W)=W1:NEXT
  146. 51220 NEXT
  147. 51400 DATA9,5,1,1.882,1.8565,18.5,10,11,7,1,1.836,2.3654,22,16,11,7,2,1.839
  148. 51420 DATA 2.5075,22,16,14,8,1,1.828,3.0292,28,25,14,8,2,1.832,3.2114,28,25
  149. 51430 DATA 18,11,1,1.839,3.8683,35.6,44
  150. 51440 DATA 18,11,2,1.861,4.1204,35.6,44,22,13,1,1.848,5.3375,44,63
  151. 51450 DATA 22,13,2,1.825,5.9283,44,63
  152. 51460 DATA 26,16,1,1.849,6.3362,52,94,26,16,2,1.834,6.9018,52,94
  153. 51470 DATA 30,19,1,1.835,7.8774,60,136
  154. 51480 DATA 30,19,2,1.831,8.5916,60,136,36,22,1,1.827,9.1729,73,201
  155. 51490 DATA 36,22,2,1.824,10.0917,73,201
  156. 52000 REM ** DRAHTTABELLE **
  157. 52100 FORJ=1TO31
  158. 52200 FORW=1TO3
  159. 52205 READW1
  160. 52210 Q1(J,W)=W1:NEXT
  161. 52220 NEXT
  162. 52400 DATA .032,.04,21.44,.04,.05,13.72,.05,.062,8.781,.063,.078,5.531
  163. 52420 DATA .071,.088,4.355,.08,.098,3.43,.09,.11,2.71,.1,.121,2.195
  164. 52440 DATA .112,.134,1.75,.125,.149,1.405,.14,.166,1.12,.16,.187,.8575
  165. 52460 DATA .18,.209,.6775,.2,.23,.5488,.224,.256,.4375,.25,.284,.3512
  166. 52480 DATA .28,.315,.28,.315,.352,.2212,.355,.395,.1742,.4,.442,.1372
  167. 52500 DATA .45,.495,.1084,.5,.548,.08781,.56,.611,.07,.63,.684,.05531
  168. 52520 DATA .71,.767,.04355,.75,.809,.03903,.8,.861,.0343,.85,.913,.03038
  169. 52540 DATA .9,.965,.0271,.95,1.017,.02432,1,1.068,.02195
  170. 53000 REM ** SPALTE UND ZEILE **
  171. 53010 X=0:FORI=52216TO52243:READA:POKEI,A:X=X+A:NEXT
  172. 53020 IFX<>3662THENPRINT"DATA-FEHLER!":STOP
  173. 53030 SZ=52216:GOTO54000
  174. 53040 DATA32,253,174,32,158,183,138,72,32,253,174,32,158,183,104,168,24,32,240
  175. 53050 DATA255,32,253,174,76,164,170,96,
  176. 54000 REM ** BIDSCHIRMFARBE **
  177. 54010 I=15:J=0
  178. 54020 POKE53280,I:POKE53281,I:POKE646,J
  179. 54030 PRINT"[147]";T$(0);T$(1);T$(2);T$(3);T$(4)
  180. 54040 SYSSZ,8,3," [194]ILDSCHIRMFARBE WAEHLEN "
  181. 54050 SYSSZ,6,8,"[194]ITTE [194]ILDSCHIRMFARBE MIT"
  182. 54060 SYSSZ,6,10,"DEN [195][213][210][211][207][210]-[212]ASTEN WAEHLEN":SYSSZ,6,12,I;J
  183. 54070 GOSUB500
  184. 54080 IFA$=CHR$(17)THENI=I+1:IFI>15THENI=0
  185. 54090 IFA$=CHR$(17)THEN54020
  186. 54100 IFA$=CHR$(145)THENI=I-1:IFI<0THENI=15
  187. 54110 IFA$=CHR$(145)THEN54020
  188. 54120 IFA$=CHR$(29)THENJ=J+1:IFJ>7THENJ=0
  189. 54130 IFA$=CHR$(29)THEN54020
  190. 54140 IFA$=CHR$(157)THENJ=J-1:IFJ<0THENJ=7
  191. 54150 IFA$=CHR$(157)THEN54020
  192. 54160 IFA$=CHR$(13)THENPOKE52214,I:POKE52214,I:POKE52215,J:RETURN
  193. 54170 GOTO54070
  194. 54180 RETURN
  195. 55000 REM ** DRUCKEN **
  196. 55010 SYSSZ,3,3,"[196]RUCKEN"
  197. 55100 CLOSE1:OPEN1,4,7:GOSUB55350
  198. 55110 PRINT#1,CHR$(14)SPC(6)"[211]PULE ([200]F-[196]ROSSEL) * [197]INGABE"
  199. 55120 GOSUB55350
  200. 55130 PRINT#1,CHR$(15)SPC(12)"[204] IN [200]ENRY     =";L1
  201. 55140 PRINT#1,CHR$(15)SPC(12)"[196] [203]ERN-[196]URCHM. =";D1
  202. 55150 PRINT#1,CHR$(15)SPC(12)"[194] [203]ERN-[194]REITE  =";B1
  203. 55160 PRINT#1,CHR$(15)SPC(12)"[203]Z 1-2 [203]AMMER  =";K1
  204. 55170 PRINT#1,CHR$(15)SPC(12)"[193]L IN N[200]ENRY   =";A1
  205. 55180 PRINT#1,CHR$(15)SPC(12)"F IN [200]ERZ      =";F1
  206. 55190 PRINT#1:GOSUB55350
  207. 55200 PRINT#1,CHR$(14)SPC(6)"[211]PULE ([200]F-[196]ROSSEL) * [193]USGABE"
  208. 55210 GOSUB55350
  209. 55240 PRINT#1,CHR$(15)SPC(12)"[206]              =";NA;
  210. 55250 IFMA=0THENPRINT#1,CHR$(15)CHR$(16)CHR$(51)CHR$(50)"[215]INDUNGEN"
  211. 55260 IFMA=1THENPRINT#1,CHR$(15)CHR$(16)CHR$(51)CHR$(50)"2 [215]IND. PARALLEL"
  212. 55270 PRINT#1,CHR$(15)SPC(12)"[196] [206]ENN.        =";E1;CHR$(16)CHR$(51)CHR$(50)"[195]UL"
  213. 55280 PRINT#1,CHR$(15)SPC(12)"[196] [193]USS.        =";E2;CHR$(16)CHR$(51)CHR$(50)"[195]UL"
  214. 55290 PRINT#1,CHR$(15)SPC(12)"[210][195]U            =";RA;CHR$(16)CHR$(51)CHR$(50)RA$
  215. 55300 PRINT#1,CHR$(15)SPC(12)"[216]L [201]NDUKTANZ   =";R2;CHR$(16)CHR$(51)CHR$(50)R2$
  216. 55310 PRINT#1,CHR$(15)SPC(12)"[209] [211]PULENGUETE  =";QQ;CHR$(16)CHR$(51)CHR$(50)R2$
  217. 55320 PRINT#1,CHR$(15)SPC(12)"F[195]U            =";FA;
  218. 55330 PRINT#1,CHR$(16)CHR$(51)CHR$(50)"[203]UPFERFUELLFAKTOR":PRINT#1:GOSUB55350
  219. 55340 O2=0:PRINT#1:PRINT#1:CLOSE1:RETURN
  220. 55350 PRINT#1,CHR$(15)SPC(12);:FORI=1TO56:PRINT#1,"-";:NEXT:PRINT#1:RETURN
  221. 56000 REM ** DRUCKEN **
  222. 56100 CLOSE1:OPEN1,4,7
  223. 56110 GOSUB56450:PRINT#1,CHR$(14)SPC(4)"[203]ERNTABELLE":GOSUB56450
  224. 56120 PRINT#1,CHR$(15)SPC(8)"[196]-[203]ERN";
  225. 56130 PRINT#1,CHR$(16)CHR$(49)CHR$(54)"[194]-[203]ERN";CHR$(16)CHR$(50)CHR$(52)"[203]Z";
  226. 56140 PRINT#1,CHR$(16)CHR$(51)CHR$(50)"[216]1";CHR$(16)CHR$(52)CHR$(48)"[217]1";
  227. 56150 PRINT#1,CHR$(16)CHR$(53)CHR$(52)"[204]N";CHR$(16)CHR$(54)CHR$(50)"[193]E"
  228. 56160 PRINT#1
  229. 56200 FORJ=1TO15:PRINT#1,CHR$(15)SPC(8);
  230. 56210 PRINT#1,Q(J,1);CHR$(16)CHR$(49)CHR$(54)Q(J,2);
  231. 56220 PRINT#1,CHR$(16)CHR$(50)CHR$(52)Q(J,3);CHR$(16)CHR$(51)CHR$(50)Q(J,4);
  232. 56230 PRINT#1,CHR$(16)CHR$(52)CHR$(48)Q(J,5);CHR$(16)CHR$(53)CHR$(52)Q(J,6);
  233. 56240 PRINT#1,CHR$(16)CHR$(54)CHR$(50)Q(J,7)
  234. 56250 NEXT
  235. 56300 GOSUB56450:PRINT#1:PRINT#1:PRINT#1
  236. 56310 GOSUB56450:PRINT#1,CHR$(14)SPC(4)"[196]RAHTTABELLE":GOSUB56450
  237. 56320 PRINT#1,CHR$(15)SPC(8)"[196]-[206]ENN";
  238. 56330 PRINT#1,CHR$(16)CHR$(50)CHR$(48)"[196]-[193]USSEN";
  239. 56340 PRINT#1,CHR$(16)CHR$(51)CHR$(50)"[210] [207]HM/M":PRINT#1
  240. 56400 FORJ=1TO31:PRINT#1,CHR$(15)SPC(8);
  241. 56410 PRINT#1,Q1(J,1);CHR$(16)CHR$(50)CHR$(48)Q1(J,2);
  242. 56420 PRINT#1,CHR$(16)CHR$(51)CHR$(50)Q1(J,3)
  243. 56430 NEXT:GOSUB56450
  244. 56440 PRINT#1:CLOSE1:RETURN
  245. 56450 PRINT#1,CHR$(15)SPC(8);:FORI=1TO60:PRINT#1,"-";:NEXT:PRINT#1:RETURN
  246.